package com.nageoffer.shortlink.project.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nageoffer.shortlink.project.dao.entity.ShortLinkDO;
import com.nageoffer.shortlink.project.dto.req.ShortLinkCreateReqDTO;
import com.nageoffer.shortlink.project.dto.req.ShortLinkPageReqDTO;
import com.nageoffer.shortlink.project.dto.resp.ShortLinkCreateRespDTO;
import com.nageoffer.shortlink.project.dto.resp.ShortLinkPageRespDTO;

import java.util.List;

/**
 * @Author: 刘新智
 * @Date: 2025/10/20 19:07
 * @Description: 短链接接口层
 * @Version: v1.0
 */
public interface ShortLinkService extends IService<ShortLinkDO> {

    /**
     * @description: 创建短链接
     * @author: 刘新智
     * @date: 2025/10/22 10:11
     * @param: [shortLinkCreateReqDTO]
     * @return: com.nageoffer.shortlink.project.dto.resp.ShortLinkCreateRespDTO
     **/
   ShortLinkCreateRespDTO createShortLink(ShortLinkCreateReqDTO shortLinkCreateReqDTO);

    /**
     * 短链接分页查询
     * @param requestParam 分页查询请求参数
     * @return 短链接分页返回结果
     */
    IPage<ShortLinkPageRespDTO> pageShortLink(ShortLinkPageReqDTO requestParam);
}
